Wireless torque wrench with torque specifications

ABSTRACT

An interactive software application on a mobile computing device is used to configure an electronic torque wrench via a wireless connection. The software application obtains torque specifications for a vehicle from a remote database. When the torque specification require that work pieces be torqued in an ordered sequence, the software application guides the technician through the sequence, but accommodates changes when the technician departs from the sequence.

CROSS-REFERENCES TO RELATED APPLICATIONS

This application is a continuation-in-part of, and claims the prioritybenefit of, U.S. patent application Ser. No. 15/601,361, filed May 22,2017, the contents of which are incorporated herein by reference intheir entirety.

TECHNICAL FIELD OF THE INVENTION

A torque wrench with a wireless link to a software application on amobile device. The software application is used to lookup specificationsand configure the wrench, and provides real-time interactivefunctionality.

BACKGROUND OF THE INVENTION

Electronic torque wrenches are gaining popularity in automotive, fleet,aviation, and other assembly and repair applications. Such wrenches areused to apply torque to a rotatable “work piece,” such as a screw, anut, a bolt, or other rotatable fastener, and to measure the torqueapplied to the work piece by the wrench. These wrenches can indicate toa technician (i.e., a wrench user) when the work piece has been torquedto the appropriate torque value, such as 100 ft-lb. Some electronictorque wrenches also measure angles as a work piece is rotated. Anglemeasurement may be used to determine which work pieces have already beentightened, and/or to tighten a work piece beyond a snug point orthreshold torque by a certain angle.

Some tasks require a specific fastening procedure, such as applyingspecific amounts of torque to a series of work pieces in an orderedsequence. Fastening procedures may also require applying specific angleadjustments to the work pieces in the sequence to ensure propertightening. The procedure for an individual work piece in the sequencemay also require applying torques and/or angles to the individual workpiece in stages. For example, an aerospace fuel line nut requires aspecific rundown angle, seating torque, and final torque and angle todetermine if the joint seats correctly.

Technicians may try to find the correct torque specifications andsequence in literature, in original equipment manufacturer (OEM) data,online, or via a consolidated information service, such as the “Mitchell1” service for automotive industry repair information. However, the timelost to researching specifications lengthens the time required toconduct a torqueing operation. Due to the time required to lookup thecorrect fastening values and procedures, technicians often instead relyon inaccurate personal experience or resort to trial and error. Further,if a technician programs a wrench with a preset called “Preset 1,” thenunless the preset is used on a regular basis, its purpose may be quicklyforgotten (and be a complete mystery if the wrench is shared withanother technician).

SUMMARY OF THE INVENTION

A system broadly comprising an electronic torque wrench and a softwareapplication. The software application is executable by a computingdevice, such as a cellular telephone or tablet computer, and connects tothe electronic torque wrench by way of a wireless communications link.Using the software application, a technician can configure the torquewrench, and use the software application to obtain torque specificationsfrom a remote service. If the torque specifications include an orderedsequence, the software application can direct the technician through thesequence, configuring the torque wrench accordingly. Should thetechnician depart from the sequence, the software applicationaccommodates the change, providing a recommendation to the technician onhow to proceed in view of the alteration of the sequence. The processperformed by the software application may take the form of a method,computer-executable code stored on a computer readable medium, or acomputing device configured to perform the process.

Implemented as a method, the method broadly comprises querying adatabase to determine at least one fastening task associated with atorqueing operation. After receiving the results, they are displayed fora technician to review, so that the technician may select a fasteningtask for which the electronic wrench will be configured. After receivinga selection of a fastening task from among those displayed, torquespecifications are determined for the selected fastening task. When thetorque specifications include an ordered sequence of work pieces, anindication is provided for the technician as to which work piece totorque as a recommendation. However, the technician can select adifferent work piece than the one indicated. When a work piece isselected that does not comport with the ordered sequence, the electronictorque wrench is configured for the torque specification correspondingto the selected work piece, and a determination is made as to which workpiece should be torqued next in view of the selected work piecedeparting from the ordered sequence. Based on the determination, anindication is provided for the technician as to which work piece isrecommended as the next to torque. This process of recommending whichwork piece should be torqued, receiving a selection, and configuring thewrench, continues until all work pieces in the sequence have beentorqued.

Implemented as a computing device, the device broadly comprises aprocessor, a display, and a memory storing instructions to be executedby the processor. The instructions configure the processor to query adatabase to determine at least one fastening task associated with avehicle. The fastening tasks are output to the display. A selection of afastening task is received from among the fastening tasks output to thedisplay. The processor determines torque specifications for the selectedfastening task. When the torque specifications include an orderedsequence of work pieces, the processor indicates, via the display, awork piece to be torqued in accordance with the ordered sequence. Aftera work piece is selected that does not comport with the ordered sequence(i.e., selected out-of-order), the processor configures an electronictorque wrench for the torque specification corresponding to the selectedwork piece, and determine a next work piece to be torqued after theselected work piece. The processor indicates, via the display, the nextwork piece to be torqued. This process of recommending which work pieceshould be torqued, receiving a selection, and configuring the wrench,continues until all of the work pieces in the sequence have beentorqued.

BRIEF DESCRIPTION OF DRAWINGS

For the purpose of facilitating an understanding of the subject mattersought to be protected, there are illustrated in the accompanyingdrawings embodiments thereof, from an inspection of which, whenconsidered in connection with the following description, the subjectmatter sought to be protected, its construction and operation, and manyof its advantages should be readily understood and appreciated.

FIG. 1 illustrates an example of a system including an electronic torquewrench and a mobile computing device.

FIGS. 2A and 2B illustrate different views of the electronic torquewrench of FIG. 1 .

FIG. 3 is a block diagram conceptually illustrating example electroniccomponents of the torque wrench of FIG. 1 .

FIG. 4 is a block diagram conceptually illustrating example electroniccomponents of the mobile computing device of FIG. 1 .

FIGS. 5A to 5L illustrate examples of user interfaces provided by thesoftware application executed on the mobile computing device of FIGS. 1and 4 , to configure and interact with the electronic torque wrench ofFIGS. 1 to 3 , and to provide additional functionality.

FIG. 6 is a process flow diagram illustrating example operations of thesoftware application executed by the mobile computing device of FIGS. 1and 4 .

FIGS. 7A to 7E illustrate examples of user interfaces provided by thesoftware application in conjunction with the process flow in FIG. 6 thatconfigure the wrench with fastening specifications.

FIGS. 8A to 8D illustrate examples of an interactive user interfaceprovided by the software application to guide a technician through anordered fastening sequence in conjunction with the process flow in FIG.6 .

FIG. 9 illustrated an example batch operation, in accordance with anembodiment of the invention.

FIG. 10 is a process flow diagram illustrating example operations of awrench lock operation based on a connection between a wrench andcomputing device, in accordance with an embodiment of the invention.

FIG. 11 a process flow diagram illustrating example operations ofanother wrench lock operation, in accordance with an embodiment of theinvention.

FIG. 12 a process flow diagram illustrating example operations of awrench lock operation based on a batch operation, in accordance with anembodiment of the invention.

FIG. 13 a process flow diagram illustrating example operations of awrench lock operation based on a torqueing operation, in accordance withan embodiment of the invention.

DETAILED DESCRIPTION OF THE EMBODIMENTS

While the present invention is susceptible of embodiments in manydifferent forms, there is shown in the drawings, and will herein bedescribed in detail, embodiments, including a preferred embodiment, ofthe invention with the understanding that the present disclosure is tobe considered as an exemplification of the principles of the inventionand is not intended to limit the broad aspect of the invention to anyone or more of the embodiments illustrated or disclosed. As used herein,the term “present invention” is not intended to limit the scope of theclaimed invention, and is instead a term used to discuss exemplaryembodiments of the invention for explanatory purposes only.

Many technicians use mobile computing devices, such as tablet computersor “smart” phones with them. Among other things, technicians may usethese devices to look up fastening values and procedures. The userinterfaces of the applications on these devices tend to use standardizedgraphical user interfaces (GUIs), such that operating new applicationsis often intuitive and requires little-to-no training. The near-ubiquityof these devices and users' existing familiarity with the interface canbe leveraged to simplify and expand access to the full suite of featuresoffered by an electronic torque wrench, and to add new features andservices.

Such an approach avoids the substantial costs and complexity associatedwith tethered base station solutions, which primarily are designed forthe industrial market. Tool sharing is also simplified, since thepresets and wrench settings can be seamlessly reconfigured for thepreferences of the technician currently using the wrench based on whichtechnician is associated with and/or logged into the mobile computingdevice, while preserving the presets and preferences of othertechnicians. Since presets and preferences can be transferred from thedevice to the tool at the start of a session, the electronic wrench canprovide a full suite of services with a smaller amount of on-tool memorythan an equivalent standalone wrench.

Referring to FIG. 1 , an example of a system including an electronictorque wrench 100 and a mobile computing device 160. The wrench 100communicates with the device 160 via a wireless communications link 170using a protocol such as Bluetooth, Bluetooth Smart (also known asBluetooth low energy), Wi-Fi Direct, or any other wireless protocol. Inan embodiment, the device 160 includes a touch-sensitive display 165 viawhich a technician interacts with user interfaces provided by a softwareapplication on the device 160. Among other things, the softwareapplication may be used to configure the wrench, to look-up fasteningvalues and procedures, and to review wrench logs. The softwareapplication also provides the technician with live, real-time feedbackand interactive functionality to assist the technician with progressingthrough fastening procedures.

The device 160 provides access to a torque values and proceduresdatabase 195 via a wireless communications link 175 to a datacommunications network 180, such as the Internet. The wirelesscommunications link 175 may be, for example, a Wi-Fi link between thedevice 160 and a local wireless router, or a cellular data link betweenthe device 160 and a nearby cell tower, using a cellular protocol suchas Long Term Evolution (LTE), Global System for Mobile Communications(GSM), Code Division Multiple Access (CDMA), etc.

One-or-more servers 190 are connected to the network 180 viacommunications link(s) 185. Based on queries received from the softwareapplication on the device 160, a server 190 retrieves fastening valueand procedures data from the database 195, transmits query results tothe device 160 via the network 180. Among other system arrangements, theserver(s) 190 and database(s) 195 may be associated with a softwareservice provider, a manufacturing company, or with the company providingrepair services. In one example, the database 195 may be the “Mitchell1” database/service for automotive industry repair information.

FIGS. 2A and 2B illustrate different views of an example of theelectronic torque wrench 100. The wrench 100 is adapted to apply torqueto a work piece via an adapter or socket coupled to a drive 240, such asa bi-directional ratcheting square or hexagonal drive. Conventionally,the drive 240 is a “male” connector designed to fit into or penetrate afemale counterpart (as illustrated), but the drive may be a “female”connector designed to receive a male counterpart. The drive may also bestructured to directly engage a work piece without coupling to anadapter or socket.

As will be described in further detail below, in an embodiment, thewrench 100 can measure, record, and display torque and angle data inreal time during torqueing operations, as well as transmit that data inreal time to the device 160. In the context of the system in FIG. 1 ,“real time” means “without significant delay” (e.g., measurement andprocessing delays not exceeding one second per data sample). Torqueapplication and angle data may be logged and stored with a time index bythe wrench 100 and/or the software application on the device 160.

The torque wrench 100 broadly comprises a shaft 201 connected to a head210 housing the drive 240. When ratcheting and torqueing, the head 210rotates around the center axis 241 of the drive 240, with the centeraxis 241 transecting the head 210. The shaft 201 comprises a handle 205,a control unit 245, and a neck 250. The neck 250 is coupled to the head210 at the opposite end of the shaft 201 from the handle 205. Asillustrated, the male drive 240 extends perpendicularly from the head210, relative to the plane in which the head 240 rotates around the axis241. Force is applied to the handle 205 to rotationally pivot the wrench100 around the axis 241, thereby transferring torque to a workpiece (notillustrated) coupled to the drive 240.

The handle 205 may include a textured grip 215 to improve a technician'sgrasp of the wrench 100 during torqueing operations. The control unit245 may include a user interface 220, such as a tactile user interfacecomprising at least one button 225 and a display screen 230. The displayscreen 230 may optionally be touch-sensitive, with the software orfirmware executed by a processor or controller of the control unit 245providing virtual on-screen controls.

Instructions and other information can be input directly into the wrench100 via the user interface 220. During torqueing operations, the display230 may display information, such as torque and/or angle information.The head 210 may include a reversing lever 235 for reversing the drivedirection of a ratcheting mechanism. As will be discussed further below,the head 210 also houses one or more sensors used to sense the torqueapplied to a work piece via the drive 240, and the angle of rotation ofthe head 210 and shaft 201 around the axis 241. The head 210 may alsoinclude an orientation sensor to determine the angle of the axis 241relative to “down” (that is, relative to the force of gravity).

FIG. 3 is a block diagram conceptually illustrating examples of theelectronic components of the electronic torque wrench 100 of FIG. 1 .The wrench 100 may include one or more controllers/processors 302, amemory 306, non-volatile storage 308, and a wireless communicationstransceiver 310. Each controller/processor 302 may include a centralprocessing unit (CPU) for processing data and computer-readableinstructions. The processor/controller 302 retrieves instructions fromdata storage 308 via a bus 304, using the memory 306 for runtimetemporary storage of instructions and data. The memory 306 may includevolatile and/or nonvolatile random access memory (RAM). While componentsare illustrated in FIG. 3 as being connected via the bus 304, componentsmay also be connected to other components in addition to (or instead of)being connected to other components via the bus 304.

Data storage 308 stores the instructions, including instructions tomanage communications with the software application on the mobilecomputing device 160. The data storage component 308 may includeone-or-more types non-volatile solid-state storage, such as flashmemory, read-only memory (ROM), magnetoresistive RAM (MRAM),phase-change memory, etc. The wrench 100 may also include aninput/output interface to connect to removable or external non-volatilememory and/or storage (such as a removable memory card, memory keydrive, networked storage, etc.). Such an input/output interface may be awired or embedded interface (not illustrated) and/or may comprise thewireless communications transceiver 310.

Computer instructions for operating the wrench 100 and its variouscomponents may be executed by the controller/processor 302, using thememory 306 as temporary “working” storage at runtime. The computerinstructions may be stored in a non-transitory manner in non-volatilememory 306, storage 308, or an external device. Alternatively,some-or-all of the executable instructions may be embedded in hardwareor firmware in addition to or instead of software.

The wrench 100 may include multiple input and output interfaces. Theseinterfaces include the radio transceiver 310, one-or-more buttons 225a/225 b, one-or-more light-emitting diodes LEDs) 330 a/330 b, a speakeror audio transducer 335, a haptics vibrator 340, one-or-more torquesensors 320, one-or-more angle sensors 324, and an orientation sensor328. The torque sensor 320 may include, for example, one-or-more of atorque transducer, a strain gauge, a magnetoelastic torque sensor, and asurface acoustic wave (SAW) sensor. The angle sensors 324 may comprise,for example, one-or-more of a rotational angle sensor and an electronicgyroscope (such as a two-or-three axes gyroscope). The orientationsensor 328 may comprise a three-axes electronic accelerometer or gravitysensor to determine the orientation of the head 210 relative to “down.”

Depending upon the type of torque sensor 320 used, analog-to-digital(A/D) converters 321 may receive analog signals from the torque sensor320, outputting digital signals to the processor/controller 302.Likewise, A/D converters 325 may receive analog signals from the anglesensor 324, and A/D converters 329 may receive analog signals from theorientation sensor 328, outputting digital signals to theprocessor/controller 302. The A/D converters 321/325/329 may bediscrete, integrated with/in the processor/controller 302, or integratedwith/in their respective sensors 320/324/328.

The number of, and need for, the A/D converters 321/325/329 is dependenton the technology used for each sensor 320/324/328. Multiple A/Dconverters may be provided to accommodate as many signals as needed,such as if the angle sensor 324 provides analog outputs for a pluralityof gyroscope axes, or if the orientation sensor 328 provides analogoutputs for a plurality of accelerometer axes. Signal conditioningelectronics (not illustrated) may also be included as standalonecircuitry, integrated with/in the processor/controller 302, orintegrated with/in the respective sensors 320/324/328, to convertnon-linear outputs generated by a component of a sensor 320/324/328 intoa linear signal.

Instructions executed by the processor/controller 302 receive data fromthe sensors 320/324/328, such as torque and angle values. From thatdata, the processor/controller 302 may determine various information,such as the duration that torque has been or should be applied to a workpiece. For some job tasks where work pieces have distinctiveorientations, the processor/controller 302 may determine which workpiece is being torqued based on the orientation of the head 210.

The sensor data and information can be logged in real time or at apredetermined sampling rate and stored in a memory 306 and/or storage308. The sensor data and information may also be transmitted to thedevice 160 via the communication link 170 for further analysis andreview. The software application on the device 160 may, for example,graphically plot the sensor data and/or information. As other examples,the software application may determine an optimal torqueing profile toapply to future torqueing operations for that work piece or job task, orto determine that a correct torqueing profile was applied during thetorqueing operation.

“Data” is/are values that are processed to make them meaningful oruseful “information.” However, as used herein, the terms data andinformation should be interpreted to be interchangeable, with dataincluding information and information including data. For example, wheredata is stored, transmitted, received, or output, that may include data,information, or a combination thereof.

The radio transceiver 310 comprises a transmitter, a receiver, andassociated encoders, modulators, demodulators, and decoders. Thetransceiver 310 manages the radio communication links, establishing thecommunications link 170 with the mobile device 160 via one-or-moreantennas 312 embedded in the wrench, enabling bidirectionalcommunication between the processor/controller 302 and the softwareapplication executed by the mobile device 160. The communications link170 may be a direct link between the wrench 100 and the computing device160 (as illustrated), or may be an indirect link through one-or-moreintermediate components, such as via a Wi-Fi router or mesh connection(not illustrated).

The wrench 100 also includes a power source 390 to power theprocessor/controller 302, the bus 304, and other electronic components.For example, the power source 390 may be one-or-more batteries arrangedin the handle 205. However, the power source 390 is not limited tobatteries, and other technologies may be used such as fuel cells. Thewrench 100 may also include components to recharge the power source 390,such as organic or polymer photovoltaic cells arranged along the neck250, and/or an interface by which to receive an external charge, such asa Universal Serial Bus (USB) port or an inductive pick-up, along withassociated charging-control electronics.

The display 230 may be used by software/firmware executed by theprocessor/controller 302 to display information for the technician toview and interpret. Such information may be formatted as text, graphics,or a combination thereof. The display 230 may also be used to providefeedback when information is entered into wrench 100 (for example, viathe buttons 225 and/or a touch-sensitive interface integrated with thedisplay 230 itself). The display 230 may be a liquid crystal display(LCD) display, an organic light emitting diode (OLED) display, anelectronic paper display, or any kind of black-and-white or colordisplay that has suitable power-consumption requirements and volume tofacilitate integration into the control unit 245.

FIG. 4 is a block diagram conceptually illustrating example componentsof the mobile computing device of FIG. 1 . In a typical implementation,the computing device 160 is a smartphone or tablet computer with atouch-sensitive display 165.

The device 160 may include one or more controllers/processors 402, thatmay each include a central processing unit (CPU) for processing data andcomputer-readable instructions, and a memory 406 for storing data andinstructions. The memory 406 may include volatile random access memory(RAM), non-volatile read only memory (ROM), and/or other types ofmemory. The device 160 may also include a data storage component 408,for storing data and controller/processor-executable instructions (forexample, instructions for the software application that performs theprocesses and generates the user interfaces illustrated in FIGS. 5-8 ).The data storage component 408 may include one-or-more types ofnon-volatile solid-state storage, such as flash memory, read-only memory(ROM), magnetoresistive RAM (MRAM), phase-change memory, etc. The device160 may also be connected to removable or external non-volatile memoryand/or storage (such as a removable memory card, memory key drive,networked storage, etc.) through the input/output device interfaces 410.

Computer instructions for operating the device 160 and its variouscomponents may be executed by the controller(s)/processor(s) 402, usingthe memory 406 as temporary “working” storage at runtime. The computerinstructions may be stored in a non-transitory manner in non-volatilememory 406, storage 408, or an external device. Alternatively, some ofthe executable instructions may be embedded in hardware or firmware inaddition to or instead of in software.

The input/output (I/O) interfaces 410 provide the device 160 withconnectivity and protocol support. A variety of input and outputconnections may be made through the input/output interfaces 410. Forexample, radio frequency (RF) antenna 470 may be used to provideconnectivity to the wrench 100 via communication link 170. The same RFantenna 470 or another antenna 475 may be used to provide connectivityto the network 180 via communication link 175.

A variety of protocols may be supported by the I/O device interfaces 410to support the links 170/175. The protocol/radio access technology usedfor each link 170/175 may be different. For example, the communicationlink 170 may use a protocol such as Wi-Fi Direct, or a personal areanetwork (PAN) protocol such as Bluetooth, Bluetooth Smart (also known asBluetooth low energy), Wireless USB, or ZigBee (IEEE 802.15.4). Thecommunication link 175 may be a wireless local area network (WLAN) linksuch as a flavor of Wi-Fi, or a cellular communications data protocolassociated with mobile broadband, LTE, GSM, CDMA, WiMAX, High SpeedPacket Access (HSPA), Universal Mobile Telecommunications System (UMTS),etc.

The input/output interfaces 410 may support audio/video (A/V) userinterfaces, such as the touch sensitive display 165, a microphone 430, aspeaker 435, a haptic vibrator 440, and a camera 445. The input/outputinterfaces 410 may also support other types of connections andcommunications protocols. For example, the device 160 may also include awired interface such as a USB port (not illustrated).

The device 160 may include an address/data bus 404 for conveying dataamong components of the device 160. Each component within the device 160may also be directly connected to other components in addition to (orinstead of) being connected to other components across the bus 404. Thedevice 160 also includes a power source 490, such as a battery or a fuelcell, along with associated charging circuitry (not illustrated).

The software application stored in storage 408 and executed by thecontroller(s)/processor(s) 402 of the mobile computing device 160provides user interfaces that allow a technician to configure andinteract with the electronic torque wrench 100, and to provideadditional functionality. While some of the functionality may beavailable directly via the user interface 220 of the torque wrench, theadded capabilities of the device 160 provides additional processingpower, and leverages the connection(s) 175 to the network(s) 180, suchas connectivity to the external database(s) 195.

Via the wireless link 170, a technician can use the software applicationon the device 160 to configure the wrench 100, such as configuring howthe wrench 100 provide a technician feedback using the haptic vibrator340, such as to indicate when a target torque or target angle isachieved.

A technician may also use the software application on the device 160 toset up or configure preset values, and set preset numbers and names forcertain operations. Preset values may include user defined torque and/orangle settings and measurement units, such as torque and angle targetvalues with minimum and maximum tolerances and/or a batch counter. Thepreset values and names can be set for custom operations, as well asaugmenting or replacing the values and names provided by the database(s)195. Among other things, preset values may be set for non-databaseaftermarket parts, and to replace values received from the database(s)195 with custom values. As used herein, “names” refer to text strings.The preset values, and set preset numbers and names may be transmittedto the wrench 100, and displayed on the wrench to a user to identify thefastening operation to be performed.

The software application on the device 160 may be used to configure thewrench 100 to set a fastener preset type to which torque is to beapplied, such as, for example, torque, angle, torque then angle ortorque and angle measurement modes. The software application on thedevice 160 may be used to configure the wrench 100 with an allowabledirection of measurement for measuring torque and rotation/angleapplication amounts. The software application on the device 160 may beused to configure the wrench 100 to prevent measuring torque in anincorrect or wrong direction, prevent measurement of a fastening task oroperation before the target values have been configured, and/or preventtechnician/operator changes and wrench use if the wrench 100 is due forcalibration or another error is detected.

The software application on the device 160 may be used to configure thewrench 100 to use an offset or adapter when measuring torque. Forexample, by configuring the wrench 100 with an offset or adapter length.For example, an adapter may be coupled to the wrench 100, which changesa length of the torque wrench and changes the measured torque reading.The wrench 100 receives the offset or adapter length, and the wrench 100automatically compensates for the change in length to allow the wrench100 to display a compensated measured torque value.

The software application on the device 160 may be used to configure thewrench 100 with automatic sequencing through preset operations toprevent any operation other than the use of the preset target fasteneroperations, to prevent further use after a preset torque sequence iscompleted, to prevent further use after over torque or rotation, and/orto redo a preset torque or angle operation.

The software application on the device 160 may be used to configure thewrench 100 to determine the elapsed time from the last calibration dateto notify the operator of the number of days before calibration isrequired. The software application on the device 160 may be used toconfigure the wrench 100 to determine the number of torque cycles sincethe last calibration date and to notify the operator of the number ofcycles left before calibration is required. The software application onthe device 160 may be used to configure the wrench 100 to indicate thatthe wrench 100 requires calibration following an expired calibrationinterval or number of torque cycles since last calibration. The softwareapplication on the device 160 may also be used to configure the wrench100 to prevent the use of the wrench 100 once calibration is required.

The wrench 100 may transmit batch, torque, angle, and/or orientationinformation to the device 160 in real time, based on data from thesensors 320/324/328. The software application on the device 160 mayrecord the data and information in one-or-more log files to be stored instorage 408, forwarded via the communication connection 175, and/oruploaded to external storage. The software application may use the loginformation to generate and send reports for auditing purposes, anddetermine whether the rate of force application, torque values, andangle values are consistent with customer and/or regulatory compliancerequirements.

For example, a fastener operation or preset may include applying aminimum target torque and/or rotational angle value. In this example,the wrench 100 receives the preset information from device 160, andindicates that the target value(s) has been reached. If the appliedtorque and/or angle continues to increase, the wrench 100 may provide awarning indication, such as an audible sound, light, etc., to indicatethat the upper limit has been exceeded. The results of the operation mayalso be wirelessly transmitted by the wrench 100 to the device 160 forprocessing and data logging.

The software application may also generate and output graphic plots inreal time via display 165, such as graphs illustrating torque versustime, torque versus angle, etc. The application may compare fastenerorientation information from a database 195 with received data fromorientation sensor 328 to automatically track which work pieces havebeen completed.

The software application may obtain torque and angle settings from thedatabase 195, and substitute or augment those setting with presetsvalues stored on the device 160. The wrench 100 may also be configuredto output a preset name for a workpiece to the display 230, rather thana name assigned to the operation by the database 195. For tasks wherethe software application downloads torque and/or angle values formultiple tasks to the wrench 100 in a batch, a technician may choosewhich work piece to operate on via the user interface 220 on the wrench100 itself, or via an interface provided on the device 160 by thesoftware application. In an alternative to batch downloading, thesoftware application may download torque and/or angle values to thewrench for one workpiece at-a-time.

The technician may interactively select which workpiece included in afastening procedure to work on, or in a slaved-mode, the softwareapplication may control the order in which work pieces are automaticallyselected, dictating to the technician the order in which a fasteningprocedure comprising multiple work pieces is carried out. Uponselection, the wrench 100 is configured with the torque and/or anglevalues for that work piece. Automatic selection in slave mode may beused for error proofing where customer or regulatory requirementsrequire an order of steps.

For many jobs, technicians need flexibility to carry out fasteningprocedures based on their own preferences and experiences, preferringnot to be locked into a fixed procedure. Failing to provide technicianssuch flexibility increases the likelihood that they will ignore orotherwise disregard manufacturer specifications. In addition, looking upmanufacturer specifications typically adds a quarter-hour to the timerequired to complete a task, further discouraging use of suchspecifications. To address these needs, the software application on thedevice 160 makes it quick and easy for a technician to obtain thecorrect specifications, while providing them increased flexibility onhow fastening procedures are carried out.

FIGS. 5A to 5H illustrate examples of graphical user interfaces (GUIs)provided by the software application executed by the mobile computingdevice 160, to configure and interact with the electronic torque wrench100, and to provide additional functionality. In the GUI figures,editable text fields are boxed to indicate that the fields may be editedvia the GUI. It will be appreciated that any GUI interface, userinterface, and/or menu operation can be used without departing from thescope and spirit of the present invention.

FIG. 5A illustrates an example of a startup “splash” screen of thesoftware application, after a communications link 170 is establishedwith the torque wrench. The screen includes a navigation icon 502.Actuation of the icon opens an options menu (menu 512 in FIG. 5B). Thereis a mode indicator 504 a identifying that a current operational mode ofthe application is “measure,” which would typically be used as defaultmode. The screen also identifies (506) the wrench 100 to which thesoftware application has been configured to connect, and the currentstate (508) of the connection 170. A “ready” message (510) indicatesthat the software application is connected and ready to interact withthe wrench 100.

FIG. 5B illustrates an example of features of the software applicationthat are accessible via the options menu 512. As illustrated, thefeatures include “measure” 514 a, “presets” 514 b, “log” 514 c, “wrenchsettings” 514 d, “wrenches” 516, and “database lookup” 518.

FIG. 5C illustrates an example of the “presets” feature 514 b. The modeindicator 504 b identifies that the current operational mode is“presets.” Selecting the presets feature causes the software applicationto upload any presets already stored on the wrench 100, and displaythose presets. As illustrated, there are no presets stored on the wrench100 for the software application to upload, so a user is presented withan interface comprising a “NEW” field 520, a “Target Torque” field 522,and a “Target Angle” field 524. Selecting any of these fields launchesan interface to define a new preset. If existing presets are uploadedand displayed, a user can select and edit each preset's setting, inaddition to creating new presets. Presets may be, for example, custompresets as might be fastening procedures used for aftermarket parts.

FIG. 5D illustrates an example of the “edit preset” feature, which maybe used to edit an existing preset or customize a new preset. The modeindicator 504 c identifies that the current operational mode is “editpreset.” Editable fields allow a technician to change any of the settingassociated with a preset, including the preset's name 528, a minimumtorque 530 for proper fastening torque, a maximum torque 532 forindicating over torque, the units 534 used for the preset's torque, andan angle 536 (which may include a minimum target value for properfastener rotation and a maximum target value for indicating overrotation). Once changes are made, the changes can be saved using a“save” button 538, or discarded using a “cancel” button 540.

In an example, the device 160 may send or transmit a wireless message tothe wrench 100 to set a preset minimum target torque value for afastener. The message can also contain a torque maximum value. Anoptional message can be transmitted to set the target torque value. Thewrench receives the optional target torque value and displays the valueon the wrench 100 if set, otherwise the minimum target torque value isdisplayed. When the minimum target torque value is applied to thefastener or the maximum torque is exceeded, the wrench 100 wirelesslytransmits the torque results to the device 160.

FIG. 5E illustrates an example of the “wrench settings” feature 514 d.The mode indicator 504 d identifies that the current operational mode is“wrench settings.” The software application uploads the current wrenchsettings from the wrench 100, and displays the current values. Asillustrated, the editable settings include the wrench's name 544, asleep timer 546 that the wrench's processor/controller 302 uses todetermine when to enter a low-power state after a period of inactivity,and whether the wrench's haptic vibrator 340 to generate vibrationfeedback. As illustrated, the vibration-setting interface is a slider548 with a text indication 550 that indicates whether vibration isenabled or disabled. When a change is made to any of the wrenchsettings, the software application downloads the change to the wrench100. A “sync” indicator 552 activates when the software application isuploading from or downloading to the wrench 100. The illustrated wrenchsettings are examples, and other or different settings may be includeddepending on (among other things) the capabilities of the wrench 100,such as settings for the brightness of a backlight included with thedisplay 230, whether acoustic feedback is provided viaspeaker/transducer 335, the tones used by for acoustic feedback, etc.

FIG. 5F illustrates an example of the wrench back in “measure” mode. Thesoftware application receives torque, angle, and/or orientation datafrom the wrench 100 via communications link 170. Each type of data maybe received at a sampling rate specified for the respective data type insoftware, firmware, or hardware. The sampled data is processed by theprocessor/controller 302 and provided to the software application on thedevice 160 in real time, with continuous updates sent via communicationslink 170 (e.g., several times per second). As an alternative, instead ofsending continuous updates to the device 160, the wrench 100 may send anupdate whenever a torque, angle, and/or orientation value changes by athreshold amount (e.g., 0.1 ft-lbs, 0.1 degrees, etc.). With eitherapproach to updating, depending upon the fastening procedure beingperformed, the software application outputs a current peak fasteningvalue (556) to the display 165. As illustrated, the current peakfastening value (556) is “101.2 ft-lb.” The screen continually updatesto show the peak torque of each wrench cycle as the wrench 100 is used.The peak value will also be saved to a log file on the device 160. Ifthe fastening procedure includes rotating the work-piece by a certainangle after a specified torque is reached, the display may switch todisplaying angle information, or display both torque and angleinformation.

FIG. 5G illustrates an example of the “log” feature 514 d. The modeindicator 504 e identifies that the current operational mode is “log.”The log screen shows the current log file contents 560 stored on thedevice 160. All of the log files are transportable to other devices. Thedevice user is able to select log files 560 (e.g., by touching recordnames via the touch-sensitive display 165 to make a selection), deleteany unwanted records (e.g., using delete button 562), and share selectedlog contents (e.g., using share button 564) using any sharingapplication available on the device 160, such as e-mail, Dropbox, etc.

FIG. 5H shows an example of sharing selected log files 574 via e-mail.The software application or the e-mail application may automaticallypopulate the “from” field 568, and the software application mayautomatically populate the subject field 572. The user populates the“to” field 570 in the ordinary manner used by the e-mail application,and selects the “send” button 576 to send or the “cancel” button 578 tocancel.

FIG. 5I shows an example of calibration options that the device 160 maybe used to configure for the wrench 100. The editable fields include acalibration interval field 580 where a desired number of months can beset, a calibration cycles field 581 where a number of cycles can be set,a warning field 582 where it can be selected whether or not warnings areto be provided, a calibration warning cycle field 583 where a number ofcycles can be set for purposes of the warning, and a calibration warningdays field 584 where a number of days can be set for purposes of thewarning. A notification field 585 can also be present where it can beselected whether or not notification are sent to an email addressprovided in an email field 586. This allows the wrench and softwareapplication running on the device 160 to determine the elapsed time fromthe last calibration date to notify the operator of the number of daysbefore calibration is required to configure the wrench 100 to determinethe number of torque cycles since the last calibration date and tonotify the operator of the number of cycles left before calibration isrequired. The software application on the device 160 may be used toconfigure the wrench 100 to indicate that the wrench 100 requirescalibration following an expired calibration interval or number oftorque cycles since last calibration. The software application on thedevice 160 may also be used to configure the wrench 100 to prevent theuse of the wrench 100 once calibration is required.

FIG. 5J illustrates another example of the “edit preset” feature, whichmay be used to edit an existing preset or customize a new preset.Editable fields allow a technician to change any of the settingassociated with a preset, including a preset type 587 (such as torque,angle, torque and angle—torque then angle, etc.), the preset's name 528,the units 534 used for the preset's torque, a direction of measurement588, a target torque value 589, a minimum torque 530 for properfastening torque, a maximum torque 532 for indicating over torque, abatch size 590, an offset length 591, and an angle 536 (which mayinclude a minimum target value for proper fastener rotation and amaximum target value for indicating over rotation). Once changes aremade, the changes can be saved using a “save” button 538, or discardedusing a “cancel” button 540. With regard to the offset length 591, anadapter may be coupled to the wrench 100, which changes a length of thetorque wrench and changes the measured torque reading. The wrench 100receives the offset or adapter length 591, and the wrench 100automatically compensates for the change in length to allow the wrench100 to display a compensated measured torque value.

FIGS. 5K and 5L illustrate an example of the Jobs feature. The device160 and/or application running on the device 160 can be used to set andenable “Job” mode on the wrench 100. The Job mode is advantageous when asupervisor wants an operator/technician to implement a torqueingsequence in a particular order. A Job mode may require an operator ortechnician to perform one or more configured preset operationssequentially. In Job mode, the wrench 100 is locked and only the presetmodes/operations are executable in the sequence they are numbered. Thefirst configured preset is displayed when Job mode is enabled. When thefirst configured preset is completed, the wrench 100 automaticallyswitches to the next configured preset.

Editable fields allow a technician to change any of the settingassociated with a Job, including selecting a Job 592, editing a job name593, and view one or more assigned presets 594 to the Job. Once a Job isselected, the Job can be edited or deleted using a “edit” button 597, ordeleted using a “delete” button 598. A new Job can also be created usinga “new” button 596. A new Job can be created or an existing Job editedin the edit Job feature illustrated in FIG. 5L. Referring to FIG. 5L,editable fields allow a technician to change any of the settingassociated with a Job or create a new Job, including the Job name 593,wrench type 599, library 571. Presets 573 may also be added to orremoved from the assigned presets 594 using add or remove buttons. Oncethe changes are made, the changes can be saved using a “save” button538, or discarded using a “cancel” button 540.

The user interfaces associated with the “wrenches” option 516 in theoptions menu 512 of FIG. 5B are not illustrated, and depend in part onthe communications protocol used to connect the wrench 100 and thedevice 160. For example, if a variant of Bluetooth is used for thecommunications link 170, the wrenches option 516 will include a list ofwrenches previously paired with the device 160, indicate which wrench onthe list the software application is currently configured to use, allowthe user to select a wrench from the list to which the softwareapplication should connect, and provide an interface to pair the device160 to a new wrench. Such interfaces may be part of the softwareapplication, part of the operating system of the device 160, part of aseparate wireless configuration tool on the device 160, or somecombination thereof.

FIG. 6 is a process flow diagram illustrating example operations of thesoftware application executed by controller(s)/processor(s) 402 of themobile computing device 160 as an example of a database lookup 518. Theillustrated process may be initiated, for example, by receiving aselection of the database lookup option 518 from the options menu 512 inFIG. 5B. Background operations such as data logging are omitted fromFIG. 6 for brevity. FIGS. 7A to 7E illustrate examples of interactiveuser interfaces provided by the software application in conjunction withthe process flow in FIG. 6 to configure the wrench with fasteningspecifications.

For example, the application receives (602) a vehicle identification.The vehicle identification information may be received, for example, byscanning a barcode or matric code on the vehicle using the camera 445,by scanning a radio-frequency identification (RFID) tag on a part or onthe vehicle, by entry into the mobile computing device 160 using avirtual keyboard provided via the touch-sensitive display 165, by entryinto a physical keyboard attached to the device 160 via an I/O interface410, by navigating through a nested list of vehicles by make, model, andyear, and/or by speech-to-text processing using microphone 430.Speech-to-text processing may be implemented by the device 160, or usinga speech-to-text processing provided by the one-or-more servers 190.

FIG. 7A illustrates the software application performing a vehicleidentification number (VIN) scan as an example of the process forreceiving (602) the vehicle information. The displayed operational mode704 a is set to “VIN Scan,” and the device captures images using camera445. The software application or a helper application perform imageprocessing to identify the VIN in the captured image(s). The softwareinterface may include a bounding box 706 a to assist a user withpositioning the device 160 relative to the VIN. The bounding box may bestatic, or may dynamically resize as the image processing software locksonto the features of the VIN (as illustrated by resized bounding box 706b in FIG. 7B).

Based on the vehicle identification information received by the mobiledevice 160, the mobile device 160 determines what vehicle is beingworked upon. Depending upon how the vehicle identification informationis captured, the mobile device 160 may work in conjunction with theserver(s) 190 to identify the vehicle. As illustrated in FIG. 7B, thesoftware application may output a progress message 708 to indicate thatthe scanned VIN has been captured and is being looked up to identify thevehicle.

The mobile device 160 sends (604) a query to a server 190 for databaseinformation about the vehicle. Based on the query, the server 190generates a list of fastening tasks from the database 195 for theidentified vehicle, and sends the list to the software application onthe device 160 as a response to the query. The contents of the list maybe anything from a message that no information is available for theidentified vehicle, to one-or-more fastening categories (i.e., tasks)for which the database has information about the identified vehicle.

In response to receiving (606) the list of fastening tasks for thevehicle, the software application may output (608) a prompt via thedisplay 165, enabling the user/technician to select a fastening taskfrom the displayed list. An example is illustrated in FIG. 7C, with thedisplayed operational mode 704 b changing to “vehicle information.” Theoutput 608 includes an identifier 712 of the vehicle (e.g., year, make,and model), and a list of fastening tasks/categories 714. The userselects a fastening task 714 from the list and presses “submit” 716 toselect the task. The process may also afford the technician the abilityto change the search (not illustrated) if technician is dissatisfiedwith the received (606) fastening task list, generating another query(604).

After receiving (610) a selection of a fastening task in response to theprompt, the software application sends (612) a request for torquespecifications for the selected task back to the server(s) 190. Asillustrated in FIG. 7D, the software application may output a progressmessage 720 to indicate that the torque specifications for the selectedtask are being looked up.

The server 190 that generates the list of fastening tasks 714 may be thesame as or different than the server 190 that looks up the torquespecification for the selected fastening task. After looking up thetorque specifications in the database 195, the server 190 sends thetorque specifications back to the software application on the device 160as a response to the request (612).

After the software application receives (614) the torque specifications,a determination (616) is made as to whether any presets corresponding tothe specification are stored on the device 160. The software applicationmay make this determination (616) based on a comparison of a text stringfor a fastening task or other embedded code received (614) in theresponse with text string or code data stored on the device 160, andassociated with at least one preset name or value.

If a preset name is stored on the device 160 for a receivedspecification, the software application will supplement (618) thefastening specification list with the stored preset names. The softwareapplication may associate a preset with a specific manufacturer andtask, rather than a specific vehicle model and year, automaticallyapplying a technician's preferred nomenclature without requiring eachoccurrence to be individually programmed. For example, a technicianperforming a “Front Wheel Alignment” (fastening task) on a 2003 ToyotaAvalon might set a nickname for lower shock absorber nuts (work pieces)to be “shock nuts.” Thereafter, whenever the application receives a“Front Wheel Alignment” specification that includes values for lowershock absorber nuts on any Toyota, the software application mayautomatically supplement the information received from the database 195with the preset nickname “shock nuts.” After the specification aredownloaded to the wrench 100, the wrench 100 may display the preset nameon the display 230, rather than the name of the fastening specificationreceived from the database 195.

The software application also determines whether any preset values havebeen set in the past to override a received torque specification. In thepast, a technician may have decided that a torque value received fromthe database 195 was not what they wanted, and manually entered adifferent torque value. If so, the software application may substitute(620) the preset values for the specification values from the database195. Both the wrench 100 and the software application on the device 160may annotate a displayed torque value to indicate that the value isbased on a preset rather than database information, such as displayingpreset values in a different color than database values. An interfacemay also provide the technician an option to choose between a previouspreset value and the value received from the database.

After adjusting the torque specifications with presets, the softwareapplication output (622) a list of work pieces for the selectedfastening task on the display 165. Torque and angle values may be batchor individually downloaded by the software application to the wrench100. As illustrated FIG. 6 , work piece torque values are downloaded(632) individually to facilitate some of the interactive features of thesoftware application. However, FIG. 7E illustrates an interface thatallows a technician to control which values are included in a batchdownload.

In FIG. 7E, the displayed operational mode 704 c is “fasteningspecifications.” The displayed list includes the titles 724 a to 724 cof each of the work pieces received from the database 195, torque values726 a to 726 c that are the values received (614) from the database 195and/or preset values if the software application has substituted (620)preset values, and any preset names 728 a to 728 c that supplement (618)the titles 724 a to 724 c received from database 195. Presets valuesand/or names can be set or adjusted by selecting the correspondingfield. The technician may select which specifications will be downloadedto the wrench 100 by selecting a respective specification usingselection boxes 730 a to 730 c, and then selecting “sync” 732. Theinterface may also provide (not illustrated) for entry and uploading oftemporary torque values that will not be saved and applied to futuretasks, which may be convenient when working with a mix of original andaftermarket equipment.

Returning to FIG. 6 , the software application may provide interactiveinterfaces to facilitate completion of a selected task. The softwareapplication determines (624), based on information received from thedatabase 195, whether torque should be applied to the workpieces in aparticular order. For example, the torque specifications that arereceived (614) may indicate that the list of work pieces is an orderedlist. Along with the ordered list, the software application may receivea graphical representation of the part being worked upon, with torquevalues in the list associated with work pieces represented in thegraphic. Mapping data may be included with the graphical representationidentifying where the workpieces are located within the graphic. Forexample, the list may include absolute or relative Cartesiancoordinates, vector coordinates, or distances from the image edges,identifying the location of a corresponding work piece in the graphic.Based on such mapping data, the software application can determine thelocations of the work pieces in the graphic.

If the list of work pieces is ordered (624 “Yes”), the graphicas-received may already be annotated with the recommended order in whichtorque should be applied to the plurality of work pieces. As analternative, the software application on the device 160 may annotate thegraphic by adding or overlaying order numbers adjacent to each workpiece, as output to the display 165.

FIG. 8A illustrates an example of a simplified graphic 810 for a bolttorque sequence for a head bolt pattern. The torque and angle values foreach bolt in the sequence are independent of the others in the sequence,such that each bolt may have different torque and angle values. Thereceived graphic may be pictorial, abstract, schematic, a photograph,etc. The operational mode 804 displays “fastening sequence,” and acounter 816 displays how many bolts (i.e., the work pieces) remain to betorqued.

The software application may add or overlay a visual highlight toidentify each work piece 812 a to 812 h on the display 165, and add oroverlay a sequence number 814 a to 814 h adjacent to each work piece.The sequence numbers may be included in list of work pieces, or thesoftware application may generate the numbers based on each work piece'sorder in the ordered list. The screen may also include a graphiccomponent to assist the technician in determining the orientation of thedisplayed graphic relative to the vehicle. In the example in FIG. 8A,this displayed indication of orientation is an arrow 818 pointing to thefront of the vehicle.

The software application determines (626) a work piece recommendation toguide the technician. If the technician follows the sequenceas-illustrated in FIG. 8A, the recommendation will correspond to theorder of the sequence numbers. On the first pass, the recommendationwill correspond to the first work piece in the sequence (whichcorresponds to workpiece 812 b in FIG. 8A). However, if the techniciandoes not follow the recommended order, an algorithm or alternative ordermay be used to determine subsequent recommendations, as will bedescribed further below. The software application may also provide awarning to the user/technician if the technician does not follow therecommended order, and such a warning may be recorded.

The software application may output (628) the recommendation bydistinctively highlighting the work piece in the graphic. An example ofthis is illustrated in FIG. 8B, where a circle 820 is graphically addedaround the recommended work piece 812 b. The circle 820 highlights thework piece, and may be uniquely colored, flashing, animated to changeshape (e.g., pulsing), etc. While a circle is illustrated as the addedhighlight, any sort of highlighting can be used, as the purpose is tovisually distinguish the recommended work piece from the other workpieces in the graphic.

Thereafter, the software application receives (630) a selection of awork piece that is input by the user. The device 160 may receive (630)the selection based on the technician touching one of the displayed workpieces on the touch-sensitive display 165, based on the technician usingthe user interface 220 on the wrench 100 to select a work piece, basedon speech-to-text processing, or if list of work pieces includes uniqueorientation information for the work pieces, based on orientation datafrom the wrench's orientation sensor 328. FIG. 8C illustrates an exampleof a technician selecting a work piece in the graphic that is differentthan the recommended work piece 820 in the sequence. The softwareapplication may highlight 822 the selected work piece to providefeedback to the technician, indicating that the technician's selectionhas been received.

If the work piece specifications are downloaded in a batch to thewrench, and the user's selection is input via the user interface 220 onthe wrench 100 or determined based on wrench head orientation, then thesoftware application may highlight (822) the selected work piece on thedisplay 165, and advance directly to outputting (634) values receivedfrom the wrench to the display 165, as previously illustrated in FIG.5F.

If the work piece specification were batch-downloaded and the selectionis received via the touch interface 165, then the software applicationsignals the processor/controller 302 on the wrench which work piece isto be worked upon. Otherwise, if the work piece specifications are beingdownloaded to the wrench on an as-needed basis, the software applicationdownloads (632) the values for the selected work piece to the wrench100. As torque is applied, the peak value per sensor data sample isoutput (634) from the display 165, as previously illustrated in FIG. 5F.

The software application continues (636 “No”) to output (634) the valuesuntil the specified torque and/or angle values are achieved. When thetarget value(s) are achieved (636 “Yes”), the wrench 100 and/or softwareapplication 160 will output feedback (e.g., audio feedback, vibration,etc.) to indicate that the target is achieved. The software applicationwill also update 638 the work piece counter 816, and update the list toindicate that the particular work piece has been torqued.

The process determines (640) whether there are any more work piecesremaining to be torqued. If there are not (640 “No”), the processreturns to outputting (608) a prompt to select a fastening task from thelist, as previously discussed in connection with FIG. 7C. The list maybe updated to indicate which tasks have already been performed.Otherwise (640 “Yes”), if there are work pieces remaining, the processloops back to step 624 to determine whether the work pieces are ordered,and if they are (624 “Yes”), to determine (626) a next work piecerecommendation.

As noted above, if the technician follows the recommended order, thenext work piece recommendation will simply be the next work piece in theordered list/sequence. However, if the technician elects not to followthe recommended order, selecting an out-of-order work piece that doesnot comport with the ordered sequence, there are several approaches thatthe software application may employ to determine which work piece shouldbe torqued next.

A first approach is use alternative order data included in a table inthe received (614) torque specification, indicating alternativerecommendation orders to use based on which work pieces have alreadybeen torqued. This approach requires minimal computation by the device160, but increases the amount of data that must be transferred with thetorque specifications, and potentially bloats the data stored indatabase 195 if the table data is not computed by the server 190 on anas-needed basis.

A second approach is for the software application to query a server 190,including a list of what work pieces have already been torqued in thequery, with the server 190 responding with an alternative recommendationorder. This reduces the overall amount of data that must be transferredwith the torque specification, but if the technician continually ignoresthe recommendations, the need to repeatedly communicate with the server190 during the process risks delays in updating recommendations aftereach selection.

A third approach is for the software application to apply an algorithmto determine a next work piece recommendation. The algorithm may besupplied by the server 190, may be stored on the device 160 with theserver 190 specifying which algorithm to use, or software application160 may independently apply an algorithm stored on the device. Thealgorithm applied by the device 160 for this approach may also be usedby the server 190 to generate the alternative lists provided with thefirst and second approaches.

Examples of the algorithm that may be used to select a next work pieceto recommend include selecting the highest-priority work piece remainingto be worked on from the original list, selecting among the remainingwork pieces based on a magnitude of the torques specified for theremaining work pieces (e.g., in a smallest-magnitude torque tolargest-magnitude torque order, or in a largest-magnitude torque to asmallest-magnitude torque order), or geometric-based selection, such asoutside-in, middle-out, and/or alternating edges, determined based onthe mapping data included with the graphical representation. Geometricselection may be relative to the work pieces that have already beentorqued, and/or relative to the last work piece that was torqued (e.g.,selecting a work piece diagonally across from the last work piecetorqued).

More than one of these algorithms may be used to make a recommendation.For example, when two-or-more algorithms select a same work piece torecommend as next, that work piece may be selected (e.g., the work piecereceiving the most votes). Different algorithms may be assigneddifferent priorities or “weights” to break ties as to which work pieceshould be next.

As another approach, if a final angle rotation is to be applied to awork piece after a work piece is seated, the software application maywithhold the angle until after all the work pieces are seated, and thenrepeat the original ordered list in the original sequence, indicatingthe angles for the work pieces where the angle data was withheld usingthe initial order.

FIG. 8D illustrates an updated fastening sequence graphicrepresentation, where the work piece counter 816 has been updated, andthe work piece that was previously selected is marked 824 as completed(using different highlighting than was used to mark a recommendation 820and a selection 822). The software application outputs 820 a next workpiece recommendation, as determined (626) using one of theabove-described approaches.

Referring to FIG. 9 , in another example, the device 160 can be used towirelessly transmit a message to set a number of fastener cycles (i.e.,batch count) to perform. This configuration is advantageous todetermine, for example, whether the user has properly sequentiallytorqued all the fasteners/workpieces in the batch. For example, if thebatch includes 3 bolts, a typical mistake is for the user to believethat all 3 bolts have been properly torqued, but instead one or more ofthe bolts have been mistakenly torqued more than once, and one or moreof the bolts therefore remain loose or have not been properly torqued.Once configured, the wrench 100 displays the cycle number and the totalnumber to be performed. For example, the display 230 of the wrench 100may display a preset name 902 and number 904, target torque value 906,measurement units 908, batch count 910, and current cycle count 912associated with the batch count operation.

The display 230 may also show a locked or unlocked icon to indicatewhether the wrench 100 is in either one of a locked or unlockedselective states. As illustrated in FIG. 9 , a locked icon 914 isdisplayed, indicating that the batch operation must be completed priorto moving to another operation. The device 160 may also configure thewrench 100 to redo a torqueing operation, if the torqueing operation wasperformed or measured incorrectly. In this instance, the cycle count toredo is displayed on the wrench 100.

In another embodiment, the device 160 can be used to set up andconfigure locking operations of the wrench 100. Referring to FIG. 10 ,the wrench 100 can be configured to enter a locked state when a wirelesslink between the wrench 100 and device 160 is disabled or fails. Forexample, the wrench 100 receives a message from the device 160 and/orapplication running on the device 160 to configure a locking operation(1002). The wrench 100 configures itself, via the processor/controller302, with the locking operation (1004). The wrench 100 and/orprocessor/controller 302 checks a status of a wireless communicationlink between the wrench 100 and the device 160 (1006). If the status ofa wireless communication link (1008) is connected, the wrench 100remains in the unlocked state (1010), and can be used to perform atorqueing operation. However, if the status of a wireless communicationlink (1008) is unconnected, the wrench 100 enters a locked state (1012),and measurement operations are disabled. A LOCKED message is displayed(1014), for example on the display 230, and an indication may beactivated. For example, the indication may be a vibration that isactivated (such as haptic vibrator 340), and illumination of red LEDs(such as LED 330 a and/or 330 b) until torque is released. When the linkis re-connected, measurement may be reenabled re-enabled.

Referring to FIG. 11 , the wrench 100 can be configured to enter alocked state by the device 160. For example, a technician can use thedevice 160 and/or application running on the device 160 to place thewrench 100 in a locked state at any time. In this example, the wrench100 receives a message from the device 160 and/or application running onthe device 160 to configure a locking operation (1102). The wrench 100configures itself, via the processor/controller 302, with the lockingoperation (1104). The wrench 100 enters a locked state (1106), andmeasurement operations are disabled. A LOCKED message, for example, isdisplayed (1108), on the display 230, and an indication may beactivated. For example, the indication may be a vibration that isactivated (such as haptic vibrator 340), and illumination of red LEDs(such as LED 330 a and/or 330 b) until torque is released. This may beuseful when incorrect presets are being used or for any other reason. Apower cycle or resending of preset parameters can be used to re-enablethe wrench 100 for fastener operations.

Referring to FIG. 12 , the wrench 100 can be configured, by the device160, to enter a locked state to prevent further fastener operations byenabling a lock at an end of batch operation. This can be used as afurther indication to the user or technician that the batch operationhas been completed. For example, a technician can use the device 160and/or application running on the device 160 to send a lock operation orconfiguration to the wrench 100 In this example, the wrench 100 receivesa message from the device 160 and/or application running on the device160 to configure a locking operation (1202). The wrench 100 configuresitself, via the processor/controller 302, with the locking operation(1204). The wrench 100 is used to perform the batch operation anddetermines whether a cycle count reaches the batch count (1206/1208). Ifthe cycle count does not match the batch count, the wrench remains inthe unlocked state (1210), and can be used to perform a torqueingoperation. However, if the cycle count does match the batch count, thewrench 100 enters a locked state (1212), and further measurementoperations are disabled. A LOCKED message is displayed (1214), forexample on the display 230, and an indication may be activated. Forexample, the indication may be a vibration that is activated (such ashaptic vibrator 340), and illumination of red LEDs (such as LED 330 aand/or 330 b). Resending preset parameters or a redo message can be usedto re-enable the wrench 100 for fastener operations.

Referring to FIG. 13 , the wrench 100 can be configured, by the device160, to enter a locked state to prevent further fastener operations byenabling a lock on over torque or rotation. For example, a techniciancan use the device 160 and/or application running on the device 160 tosend a lock operation or configuration to the wrench 100 In thisexample, the wrench 100 receives a message from the device 160 and/orapplication running on the device 160 to configure a locking operation(1302). The wrench 100 configures itself, via the processor/controller302, with the locking operation (1304). The wrench 100 is used toperform a torqueing operation and measures applied torque and/or anglevalues (1306). The wrench 100 also determines whether the measuredapplied torque and/or angle values exceed maximum preset torque and/orangle values (1308). If the measured applied torque and/or angle valuesdo not exceed the maximum preset torque and/or angle values, the wrenchremains in the unlocked state (1310), and can be used to perform thetorqueing operation. However, if the measured applied torque and/orangle values exceed the maximum preset torque and/or angle values, thewrench 100 enters a locked state (1312), and measurement operations aredisabled. A LOCKED message is displayed (1314), for example on thedisplay 230, and an indication may be activated. For example, theindication may be a vibration that is activated (such as haptic vibrator340), and illumination of red LEDs (such as LED 330 a and/or 330 b).Resending preset parameters or a redo message can be used to re-enablethe wrench 100 for fastener operations.

The device 160 and/or application running on the device 160 can also beused to lock the presets. For example, the wrench 100 can be locked touse only preset torque/angle measurements, and manual torque and anglemodes are disabled. In this example, a lock icon (such as the lock icon914) is displayed on the preset target screen of the display 230 whenlocked. The user/technician can only select from multiple presets on thewrench or application running on the device 160. A password may berequired to make any configuration changes on the wrench 100.

The device 160 and/or application running on the device 160 can also beused to lock menu access to the wrench 100. For example, menu access onthe wrench 100 can be locked, and manual torque and angle modesdisabled. In this example, a lock icon (such as the lock icon 914) isdisplayed on the preset target screen of the display 230 when locked. Apassword may be required to enable access to menus on the wrench 100.

It should be appreciated that any number of the lock operationsillustrated and described above may be used in combination with oneanother. The lock operations may also be used in conjunction with any ofthe other configurations, operations, presets, fastening tasks, etc.described herein.

The concepts disclosed herein may be applied within several differentdevices and computer systems. Although device 160 is described as amobile device, any computer may be used. Likewise, the server(s) 190 maybe any sort of computer.

The specific examples discussed above are meant to be illustrative. Theywere chosen to explain the principles and application of the disclosureand are not intended to be exhaustive. Persons having ordinary skill inthe field of computers should recognize that components and processsteps described herein may be interchangeable with other components orsteps, or combinations of components or steps, and still achieve thebenefits and advantages of the present invention.

The processes executed by the wrench 100, the device 160, and servers190 may be implemented as a computer method or as an article ofmanufacture such as a memory device or non-transitory computer readablestorage medium. The computer readable storage medium may be readable bya computer and may comprise instructions for causing a computer or otherdevice to perform the described processes. The computer readable storagemedium may be implemented by a non-volatile computer memory, storage, ormedia. In addition, some of the processing operations attributed to thewrench 100 may be implemented as firmware or as a state machine inhardware, such as implementing some or all of the operations executed byprocessor/controller 302 as an application specific integrated circuit(ASIC), a field programmable gate array (FPGA), or some combinationthereof.

As used in this disclosure, the term “a” or “one” may include one ormore items unless specifically stated otherwise. Further, the phrase“based on” is intended to mean “based at least in part on” unlessspecifically stated otherwise.

As used herein, the term “coupled” and its functional equivalents arenot intended to necessarily be limited to direct, mechanical coupling oftwo or more components. Instead, the term “coupled” and its functionalequivalents are intended to mean any direct or indirect mechanical,electrical, or chemical connection between two or more objects,features, work pieces, and/or environmental matter. “Coupled” is alsointended to mean, in some examples, one object being integral withanother object.

The matter set forth in the foregoing description and accompanyingdrawings is offered by way of illustration only and not as a limitation.While particular embodiments have been shown and described, it will beapparent to those skilled in the art that changes and modifications maybe made without departing from the broader aspects of the inventors'contribution. The actual scope of the protection sought is intended tobe defined in the following claims when viewed in their properperspective based on the prior art.

What is claimed is:
 1. A method of configuring an electronic torquewrench with an external device, comprising: establishing a wirelesscommunication connection between the electronic torque wrench and theexternal device; receiving a preset fastening task and a lock operationfrom the external device; determining a torque specification associatedwith the preset fastening task, wherein the torque specificationincludes a target torque value; configuring the electronic torque wrenchwith the torque specification and the lock operation; and determiningthat the wireless communication connection is disconnected to cause theelectronic torque wrench to enter a locked state that disablesmeasurement of torque by the electronic torque wrench, based on the lockoperation.
 2. The method of claim 1, wherein the torque specificationfurther includes a batch count, and the method further includes:determining whether a cycle count matches the batch count; and if thecycle count is determined to match the batch count, then causing theelectronic torque wrench to enter the locked state, based on the lockoperation.
 3. The method of claim 1, further comprising: determining ameasured amount of torque applied to a fastener; determining whether themeasured amount of torque exceeds the target torque value; and if themeasured amount of torque is determined to exceed the target torquevalue, then causing the electronic torque wrench to enter the lockedstate, based on the lock operation.
 4. The method of claim 1, furthercomprising displaying a lock screen on the electronic torque wrench inresponse to the electronic torque wrench entering the locked state. 5.The method of claim 1, further comprising activating a haptic vibratorof the electronic torque wrench in response to the electronic torquewrench entering the locked state.
 6. The method of claim 1, furthercomprising illuminating a light emitting diode of the electronic torquewrench in response to the electronic torque wrench entering the lockedstate.